Regular Expression (রেগুলার এক্সপ্রেশন), সংক্ষেপে RegEx বা regexp, একটি প্যাটার্ন বা নিদর্শন, যা সাধারণত টেক্সট ডেটায় নির্দিষ্ট ধরণের তথ্য খুঁজে বের করতে ব্যবহৃত হয়। এটি একটি শক্তিশালী টুল যা বিভিন্ন প্রোগ্রামিং ভাষায় পাওয়া যায় এবং ডেটা ফিল্টারিং, প্রক্রিয়াকরণ, এবং বিশ্লেষণে ব্যবহৃত হয়।
a
, b
, 1
, 2
ইত্যাদি। এগুলি সরাসরি মেলে।.
, *
, +
, ?
, ^
, $
, [ ]
, ( )
, { }
, |
ইত্যাদি। এগুলি নির্দিষ্ট প্যাটার্ন অনুসারে মেলানোর জন্য ব্যবহার করা হয়।.
(ডট): যে কোনো একক অক্ষর নির্দেশ করে।h.t
"hat", "hot", "hit" এর সাথে মিলে যায়।^
(ক্যারেট): কোনো লাইনের শুরু নির্দেশ করে।^Hello
শুধুমাত্র সেই লাইনের সাথে মিলে যাবে যা "Hello" দিয়ে শুরু হয়।$
(ডলার): কোনো লাইনের শেষ নির্দেশ করে।end$
শুধুমাত্র সেই লাইনের সাথে মিলে যাবে যা "end" দিয়ে শেষ হয়।*
(স্টার): শূন্য বা একাধিকবার পূর্ববর্তী চরিত্র বা গ্রুপের পুনরাবৃত্তি নির্দেশ করে।ab*
"a", "ab", "abb" ইত্যাদির সাথে মিলে যাবে।+
(প্লাস): অন্তত একবার পূর্ববর্তী চরিত্র বা গ্রুপের পুনরাবৃত্তি নির্দেশ করে।ab+
"ab", "abb", "abbb" ইত্যাদির সাথে মিলে যাবে, কিন্তু "a" এর সাথে নয়।?
(কোশ্চেন): পূর্ববর্তী চরিত্র বা গ্রুপ শূন্য বা একবার মেলে।colou?r
"color" এবং "colour" উভয়ের সাথে মিলে যাবে।[ ]
(সেট): সেটের মধ্যে থাকা যে কোনো একক চরিত্র মেলে।[aeiou]
যেকোনো vowel এর সাথে মিলে যাবে।|
(অর): বিকল্প নির্দেশ করে।cat|dog
"cat" অথবা "dog" এর সাথে মিলে যাবে।সাধারণ প্যাটার্ন ম্যাচিং:
awk '/^Error/' logfile.txt
এই AWK কমান্ডটি logfile.txt
ফাইলের শুধুমাত্র সেই লাইনগুলো প্রিন্ট করবে যা "Error" দিয়ে শুরু হয়েছে।
নির্দিষ্ট ফিল্ডে প্যাটার্ন অনুসন্ধান:
এই AWK কমান্ডটি data.txt
ফাইলের দ্বিতীয় ফিল্ডে বড় হাতের অক্ষর দিয়ে শুরু হওয়া লাইনের পুরো লাইন প্রিন্ট করবে।
[0-9]
: যেকোনো সংখ্যা (0 থেকে 9)।[a-z]
: ছোট হাতের যেকোনো অক্ষর (a থেকে z)।[A-Z]
: বড় হাতের যেকোনো অক্ষর (A থেকে Z)।\d
: যেকোনো সংখ্যা (0-9), যা কিছু ভাষায় \d
দ্বারা নির্দেশ করা হয়।\w
: যেকোনো অক্ষর বা সংখ্যা।\s
: যেকোনো স্পেস চিহ্ন।Regular Expression (RegEx) হল একটি শক্তিশালী টুল যা টেক্সট প্রক্রিয়াকরণ, তথ্য অনুসন্ধান এবং বিশ্লেষণে ব্যবহৃত হয়। এটি বিশেষ চরিত্র এবং প্যাটার্ন ব্যবহার করে ডেটার মধ্যে নির্দিষ্ট অংশ অনুসন্ধান ও পরিবর্তন করতে সাহায্য করে। RegEx এর সাহায্যে প্রোগ্রামাররা সহজেই বড় ডেটাসেট প্রক্রিয়া এবং ফিল্টার করতে পারেন, যা প্রোগ্রামিং এবং ডেটা ম্যানিপুলেশনের ক্ষেত্রে অত্যন্ত কার্যকর।
common.read_more